﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace QInfrastructure.Models
{
    public abstract class QBaseGuidEntity:GuidPKEntity
    {

    }
    public abstract class QBaseGuidDetailEntity : GuidPKEntity
    {
        /// <summary>
        /// 主表Id
        /// </summary>
        public Guid MainId { get; set; }
        public int Index {  get; set; }

    }

    public abstract class QBaseGuidEntityWithParent : QBaseGuidEntity
    {

        /// <summary>
        /// 父节点的ID
        /// </summary>
        public Guid ParentId { get; set;}
    }


    public abstract class QBaseIntEntity : IntPKEntity
    {

    }
    public abstract class QBaseIntDetailEntity : IntPKEntity
    {
        /// <summary>
        /// 主表ID
        /// </summary>
        public int MainId { get; set;}
        public int Index { get; set; }

    }
    public abstract class QBaseIntEntityWithParent : QBaseIntEntity
    {
        /// <summary>
        /// 父节点Id
        /// </summary>
        public int ParentId { get; set; }
    }

    public abstract class QBaseStringEntity : StringPKEntity
    {

    }

    public abstract class QBaseStringDetailEntity: StringPKEntity
    {
        /// <summary>
        /// 主表ID
        /// </summary>
        public string MainId { get; set; }
        public int Index { get; set; }
    }

    public abstract class QBaseStringEntityWithParent : QBaseStringEntity
    {
        /// <summary>
        /// 父节点Id
        /// </summary>
        public string ParentId { get; set; }
    }









}
